package main

import (
	"fmt"
	"io"
	"os"
	"path/filepath"
	"time"
)

func main1() {
	// 静态配置
	filePath := `C:\Users\admin\Desktop\南部新城\招商\w\20241202-运营阶段-服务器巡检记录表（招商）.docx` // 源文件路径                                                          // 文件名前缀
	startDate := time.Date(2024, 12, 3, 0, 0, 0, 0, time.UTC)                      // 开始日期
	endDate := time.Date(2025, 2, 27, 0, 0, 0, 0, time.UTC)                        // 结束日期

	// 检查文件是否存在
	if _, err := os.Stat(filePath); os.IsNotExist(err) {
		fmt.Println("文件不存在，请检查路径是否正确。")
		return
	}

	// 获取文件扩展名
	ext := filepath.Ext(filePath)

	// 遍历日期范围
	for d := startDate; !d.After(endDate); d = d.AddDate(0, 0, 1) {
		// 构建新文件名
		dateLabel := d.Format("20060102")
		newFileName := fmt.Sprintf("%s-运营阶段-服务器巡检记录表（招商）%s", dateLabel, ext)
		newFilePath := filepath.Join(filepath.Dir(filePath), newFileName)

		// 复制文件
		if err := copyFile(filePath, newFilePath); err != nil {
			fmt.Printf("复制文件失败: %v\n", err)
			return
		}

		fmt.Printf("已生成副本: %s\n", newFileName)
	}

	fmt.Println("所有副本已生成完成！")
}

// 复制文件函数
func copyFile(src, dst string) error {
	sourceFile, err := os.Open(src)
	if err != nil {
		return err
	}
	defer sourceFile.Close()

	destFile, err := os.Create(dst)
	if err != nil {
		return err
	}
	defer destFile.Close()

	_, err = io.Copy(destFile, sourceFile)
	if err != nil {
		return err
	}

	return nil
}
